package com.my.financial.domain;

import java.util.List;

import com.my.financial.controller.form.LoginForm;
import com.my.financial.controller.form.PageInfo;
import com.my.financial.controller.form.QueryForm;
import com.my.financial.controller.form.RegisteForm;

public interface FinancialService {

	User login(LoginForm loginForm);

	void register(RegisteForm registeForm);

	void addMember(String member, Long userId);

	void deleteMember(String member, Long userId);

	List<String> findAllMembers(Long userId);

	void saveUser(User user);

	void deleteUserById(Long id);

	User findUserById(String userId);

	void saveAccount(FinancialAccount account);

	void deleteAccountById(Long id);

	void saveItem(FinancialItem item);

	void batchDeleteItemById(String multiId);

	List<FinancialItem> findItemByQueryForm(QueryForm queryForm,
			PageInfo pageInfo);

	PageInfo findPageInfo(QueryForm queryForm, PageInfo pi);

	boolean checkUserName(String userName);

	List<FinancialAccount> findAllAccount(Long userId);

	QueryForm getStartAndEndTime(String dateType, String dateNum);

	String getDateRange(QueryForm queryForm, String dateType);

}